/*******************************************************************************
*
*   FILE NAME:
*       Types.h - Type definitions
*
*   DESCRIPTION:
*       All common typedefs should be contained in this file.
*
*   NOTE:
*       The following typedefs should be used throughout the game engine instead
*       of basic types (bool, char, int, float, double, etc) to allow for easier
*       porting to other operating systems.
*
*******************************************************************************/
#pragma once

typedef unsigned char boolean;

typedef unsigned char uint8;
typedef unsigned short int uint16;
typedef unsigned long int uint32;
typedef unsigned long long int uint64;

typedef signed char int8;
typedef signed short int int16;
typedef signed long int int32;
typedef signed long long int int64;

typedef float float32;
typedef double float64;

typedef wchar_t tchar;

#define NULL 0

#define TRUE 1
#define FALSE 0

#define UINT8_MIN = 0
#define UINT16_MIN = 0
#define UINT32_MIN = 0
#define UINT64_MIN = 0
#define INT8_MIN = -128
#define INT16_MIN = -32768
#define INT32_MIN = -2147483648
#define INT64_MIN = -9223372036854775808

#define UINT8_MAX = 255
#define UINT16_MAX = 65535
#define UINT32_MAX = 4294967295
#define UINT64_MAX = 18446744073709551615
#define INT8_MAX = 127
#define INT16_MAX = 32767
#define INT32_MAX = 2147483647
#define INT64_MAX = 9223372036854775807
